home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 February: Tool Chest / Apple Developer CD Series Tool Chest February 1996 (Apple Computer)(1996).iso / Tool Chest / Interfaces & Libraries / Interfaces / AIncludes / AIFF.a < prev    next >
Encoding:
Text File  |  1992-06-30  |  6.0 KB  |  195 lines  |  [TEXT/MPS ]

  1.  
  2. ; Created: Thursday, December 19, 1991 3:38 PM
  3. ;
  4. ; File: AIFF.a
  5. ;
  6. ; Assembler Interface to the Macintosh Libraries
  7. ; Copyright Apple Computer, Inc. 1990
  8. ; All Rights Reserved
  9. ;
  10. ;___________________________________________________________________________
  11.  
  12.  IF (&TYPE('__AIFF__') = 'UNDEFINED') THEN
  13. __AIFF__   SET 1
  14.  
  15.  
  16. AIFFID                   EQU     'AIFF'
  17. AIFCID                   EQU     'AIFC'
  18. FormatVersionID          EQU     'FVER'
  19. CommonID                 EQU     'COMM'
  20. FORMID                   EQU     'FORM'
  21. SoundDataID              EQU     'SSND'
  22. MarkerID                 EQU     'MARK'
  23. InstrumentID             EQU     'INST'
  24. MIDIDataID               EQU     'MIDI'
  25. AudioRecordingID         EQU     'AESD'
  26. ApplicationSpecificID    EQU     'APPL'
  27. CommentID                EQU     'COMT'
  28. NameID                   EQU     'NAME'
  29. AuthorID                 EQU     'AUTH'
  30. CopyrightID              EQU     '    '
  31. AnnotationID             EQU     'ANNO'
  32. NoLooping                EQU     0
  33. ForwardLooping           EQU     1
  34. ForwardBackwardLooping   EQU     2
  35.  
  36. ; AIFF-C Versions 
  37. AIFCVersion1             EQU     $A2805140
  38.  
  39. ; Compression Types 
  40. NoneType                 EQU     'NONE'
  41. ACE2Type                 EQU     'ACE2'
  42. ACE8Type                 EQU     'ACE8'
  43. MACE3Type                EQU     'MAC3'
  44. MACE6Type                EQU     'MAC6'
  45.  
  46. ChunkHeader              RECORD  0
  47. ckID                     DS.L    1   ; ID
  48. ckSize                   DS.L    1   ; long
  49. size                     EQU     *
  50.                          ENDR
  51.  
  52.  
  53. ContainerChunk           RECORD  0
  54. ckID                     DS.L    1   ; ID
  55. ckSize                   DS.L    1   ; long
  56. formType                 DS.L    1   ; ID
  57. size                     EQU     *
  58.                          ENDR
  59.  
  60.  
  61. FormatVersionChunk       RECORD  0
  62. ckID                     DS.L    1   ; ID
  63. ckSize                   DS.L    1   ; long
  64. timestamp                DS.L    1   ; long
  65. size                     EQU     *
  66.                          ENDR
  67.  
  68.  
  69. CommonChunk              RECORD  0
  70. ckID                     DS.L    1   ; ID
  71. ckSize                   DS.L    1   ; long
  72. numChannels              DS.W    1   ; short
  73. numSampleFrames          DS.L    1   ; long
  74. sampleSize               DS.W    1   ; short
  75. sampleRate               DS.B    10  ; Extended80
  76. size                     EQU     *
  77.                          ENDR
  78.  
  79.  
  80. ExtCommonChunk           RECORD  0
  81. ckID                     DS.L    1   ; ID
  82. ckSize                   DS.L    1   ; long
  83. numChannels              DS.W    1   ; short
  84. numSampleFrames          DS.L    1   ; long
  85. sampleSize               DS.W    1   ; short
  86. sampleRate               DS.B    10  ; Extended80
  87. compressionType          DS.L    1   ; ID
  88. compressionName          DS.B    1   ; Array of Byte
  89. size                     EQU     *
  90.                          ENDR
  91.  
  92.  
  93. SoundDataChunk           RECORD  0
  94. ckID                     DS.L    1   ; ID
  95. ckSize                   DS.L    1   ; long
  96. offset                   DS.L    1   ; long
  97. blockSize                DS.L    1   ; long
  98. size                     EQU     *
  99.                          ENDR
  100.  
  101.  
  102. Marker                   RECORD  0
  103. id                       DS.W    1   ; MarkerIdType
  104. position                 DS.L    1   ; long
  105. markerName               DS.B    256 ; Str255
  106. size                     EQU     *
  107.                          ENDR
  108.  
  109.  
  110. MarkerChunk              RECORD  0
  111. ckID                     DS.L    1   ; ID
  112. ckSize                   DS.L    1   ; long
  113. numMarkers               DS.W    1   ; short
  114. Markers                  DS.B    Marker.size*1
  115. size                     EQU     *
  116.                          ENDR
  117.  
  118.  
  119. AIFFLoop                 RECORD  0
  120. playMode                 DS.W    1   ; short
  121. beginLoop                DS.W    1   ; MarkerIdType
  122. endLoop                  DS.W    1   ; MarkerIdType
  123. size                     EQU     *
  124.                          ENDR
  125.  
  126.  
  127. InstrumentChunk          RECORD  0
  128. ckID                     DS.L    1   ; ID
  129. ckSize                   DS.L    1   ; long
  130. baseFrequency            DS.B    1   ; Byte
  131. detune                   DS.B    1   ; Byte
  132. lowFrequency             DS.B    1   ; Byte
  133. highFrequency            DS.B    1   ; Byte
  134. lowVelocity              DS.B    1   ; Byte
  135. highVelocity             DS.B    1   ; Byte
  136. gain                     DS.W    1   ; short
  137. sustainLoop              DS      AIFFLoop
  138. releaseLoop              DS      AIFFLoop
  139. size                     EQU     *
  140.                          ENDR
  141.  
  142.  
  143. MIDIDataChunk            RECORD  0
  144. ckID                     DS.L    1   ; ID
  145. ckSize                   DS.L    1   ; long
  146. MIDIdata                 DS.B    1   ; Array of Byte
  147. size                     EQU     *
  148.                          ENDR
  149.  
  150.  
  151. AudioRecordingChunk      RECORD  0
  152. ckID                     DS.L    1   ; ID
  153. ckSize                   DS.L    1   ; long
  154. AESChannelStatus         DS.B    24  ; Array of Byte
  155. size                     EQU     *
  156.                          ENDR
  157.  
  158.  
  159. ApplicationSpecificChunk RECORD  0
  160. ckID                     DS.L    1   ; ID
  161. ckSize                   DS.L    1   ; long
  162. applicationSignature     DS.L    1   ; OSType
  163. data                     DS.B    1   ; Array of Byte
  164. size                     EQU     *
  165.                          ENDR
  166.  
  167.  
  168. Comment                  RECORD  0
  169. timeStamp                DS.L    1   ; long
  170. marker                   DS.W    1   ; MarkerIdType
  171. count                    DS.W    1   ; short
  172. text                     DS.B    1   ; Array of Byte
  173. size                     EQU     *
  174.                          ENDR
  175.  
  176.  
  177. CommentsChunk            RECORD  0
  178. ckID                     DS.L    1   ; ID
  179. ckSize                   DS.L    1   ; long
  180. numComments              DS.W    1   ; short
  181. comments                 DS.B    Comment.size*1
  182. size                     EQU     *
  183.                          ENDR
  184.  
  185.  
  186. TextChunk                RECORD  0
  187. ckID                     DS.L    1   ; ID
  188. ckSize                   DS.L    1   ; long
  189. text                     DS.B    1   ; Array of Byte
  190. size                     EQU     *
  191.                          ENDR
  192.  
  193.  
  194.  
  195.                          ENDIF    ;  ...already included